package com.springboot.wisdom.common.common;

import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import com.alibaba.fastjson2.JSONObject;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;

import java.util.HashMap;

/**
 * @Description
 * @Author LY L
 * @Date 2024-11-01
 */
@Data
@ToString
@NoArgsConstructor
public class HttpUtils {

    /**
     * 远程调用 post请求地址。
     *
     * @param paramMap 请求体内容，若无请求体内容请设置为null。
     * @param postUrl  请求的URL地址。
     * @param token    请求的token，若无token请求，可为空。
     * @return 响应内容。
     */
    public static String httpPostUrl(HashMap<String, Object> paramMap, String postUrl, String token) {


        HttpRequest post = HttpRequest.post(postUrl);
        post.contentType("application/json;charset=UTF-8");
        post.header("Accept", "application/json, text/plain, */*");
        if (token != null) {
            post.header("token", token);
        }
        if (paramMap != null) {
            String paramMapJson = JSONObject.toJSONString(paramMap);
            post.body(paramMapJson);
        }
        // 执行。
        HttpResponse execute = post.execute();
        return execute.body();
    }

}
